package exception;

import file.Test;

/**
 * final finally finalize
 * finalize方法是Object中定义的方法  该方法是对一个对象的生命周期中的最后一个方法
 * 放gc即将释放一个对象前会调用该对象的finalize方法 调用后结束
 */
public class FinallyDemo3 {
    public static void main(String[] args) {
        System.out.println(
                text("0")+text("null")+ text(" ")//0，1，2
        );//3,3,3  finally强制执行会覆盖掉前面的值
    }
    public static int text(String str){
        try {
            return str.charAt(0)-'0';
        }catch (NullPointerException e){
            return 1;
        }catch (Exception e){
            return 2;
        }finally {
            return 3;
        }
    }
}
